NuGet失败:“基础连接已关闭:发送中发生意外错误” 您所在的位置:网站首页 v2ray 基础连接已经关闭 NuGet失败:“基础连接已关闭:发送中发生意外错误”

NuGet失败:“基础连接已关闭:发送中发生意外错误”

2023-05-27 14:52| 来源: 网络整理| 查看: 265

我想通过使用"管理Nuget软件包"来安装Microsoft ASP.NET Identity Core,但是当我单击"安装"按钮时,会发生以下错误:

基础连接已关闭:发送中发生意外错误

相关讨论 您可以使用NuGet安装其他软件包吗? 不,我无法安装任何软件包。

尝试将以下内容粘贴到.reg文件中并运行它。然后尝试运行您的NuGet命令(无需重新启动)。

1234567Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\.NETFramework\\v4.0.30319] "SchUseStrongCrypto"=dword:00000001 [HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Microsoft\\.NETFramework\\v4.0.30319] "SchUseStrongCrypto"=dword:00000001

由于未启用TLS1.2(类似于Tony的响应),导致出现此问题。使用http不能解决这种情况,因为强制实施TLS1.2后,NuGet重定向到https。

相关讨论 谢谢!这修复了在LINQPad 4中使用NuGet时的异常。 自2020年6月15日起,Nuget已正式永久删除对TLS 1.0和1.1的支持。请参阅:devblogs.microsoft.com/nuget/。因此,您可能在较旧的Windows平台上遇到此问题(对我来说,它是Windows 2012 R2)。 @karmasponge刚在Win 7上遇到了它。 为我工作,我正在使用Visual Studio 2013 为我工作(SharpDevelop 4.4.1; Win 7)。 这里是您可以直接运行的命令(而不是将.reg文件弄乱):reg.exe add HKLM\\SOFTWARE\\Microsoft\\.NETFramework\\v4.0.30319 v SchUseStrongCrypto t REG_DWORD d 1 reg.exe add HKLM\\SOFTWARE\\Wow6432Node\\Microsoft\\.NETFramework\\v4.0.30319 v SchUseStrongCrypto t REG_DWORD d 1

这是http://go.microsoft.com上的SSL证书问题。将包源URL更改为对我有用的http://packages.nuget.org/v1/FeedService.svc/。

资料来源:https://nuget.codeplex.com/discussions/275537

我在使用Microsoft Visual Studio Premium 2012的旧客户开发人员VM上收到此错误:

Install-Package : An error occurred while loading packages from 'https://nuget.org/api/v2/': The underlying connection was closed: An unexpected error occurred on a send

通过转到工具->扩展和更新...->更新-> Visual Studio Gallery并从此处更新NuGet软件包管理器来解决它。

重新启动后,一切正常:

相关讨论 这是为我解决的答案。更新工具总是胜过手动修改注册表。

如果未启用TSL 1.0(在Server 2012R2中默认禁用),也会发生这种情况。在这种情况下,您可能会看到某些软件包已成功安装,然后再单击"基础连接已关闭:发送时发生意外错误"错误。

有关错误的更多详细信息,请使用"详细详细信息"从命令行运行nuget install

System.Net.WebException: The underlying connection was closed: An unexpected err or occurred on a receive. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm

自2020年6月15日起,NuGet删除了对TLS 1.0和1.1的支持。 请参阅https://devblogs.microsoft.com/nuget/deprecating-tls-1-0-and-1-1-on-nuget-org/

如果您使用的是VS2013或更低版本,那么截至该日期您已经失去了NuGet的连接,并且只能通过至少升级到VS2015来使用NuGet,尽管我建议在此评论发表时最晚升级到VS2019。

相关讨论 截至2020年7月7日,事实并非如此。我们的团队仍在使用VS 2013,通过遵循提到将条目添加到注册表中的第一个答案,我们能够克服该错误。 就我而言,添加到注册表无法解决问题。很高兴为您做到了。但是,我将VS 2013项目升级到了VS2019。我必须安装一些在VS 2013中拥有的扩展,但不能很好地运行。我首先为VS升级做了一个新的git分支,以便有选择地回滚。我注意到除了我自己进行的代码更改外,没有其他git更改。对VS 2019非常满意。 是的,VS2013在这里有同样的问题。通过按最高投票答案添加注册表项并重新启动VS来解决。

如果您的防火墙正在执行SSL检查,则可能会发生这种情况。您可能需要将仓库列入白名单。

就我而言,我们有阻止.EXE下载的规则,因此我们在.nuget解决方案文件夹中的NuGet.targets和NuGet.Config旁边保留了一个NuGet.exe副本。

无论出于何种原因,在新分支中都没有此内容。

通常,这与Web服务器没有有效的SSL证书有关。无效的SSL证书可能是由于它是自签名的,并且不受CA信任,或者该证书已被CA吊销。

使用未经身份验证的URL可以解决该问题,但是解决该问题的方法是确保SSL证书有效。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有